<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
	</head>
	<body>
		<script type='text/javascript'>
			// vue2与vue3数据拦截不同的点
			// vue2一般写法:
			let o={
				a:1,
				b:2,
				c:3,
				obj:{
					x:4
				}
			}
			let m={};
			// 要做循环
			for (let k in o){
				Object.defineProperty(m,k,{
					get(){
						return o[k]
					},
					set(){						
					}				
				});
			}
			console.log(m);
			
			// vue3用new Proxy,不用做循环
			let g=new Proxy(o,{
				get(){
				},
				set(){
					console.log('修改了')
				}
			})
			m.a=2
			console.log(g);
			
		</script>
	</body>
</html>